Index: ioemu/hw/iommu.c
===================================================================
---- ioemu.orig/hw/iommu.c 2006-07-28 09:56:58.571272016 +0100
-+++ ioemu/hw/iommu.c 2006-07-28 10:02:10.171049510 +0100
+--- ioemu.orig/hw/iommu.c 2006-08-02 09:46:38.774790244 +0100
++++ ioemu/hw/iommu.c 2006-08-02 09:46:39.030761544 +0100
@@ -82,7 +82,11 @@
#define IOPTE_VALID 0x00000002 /* IOPTE is valid */
#define IOPTE_WAZ 0x00000001 /* Write as zeros */
Index: ioemu/cpu-all.h
===================================================================
---- ioemu.orig/cpu-all.h 2006-07-28 09:58:38.815935452 +0100
-+++ ioemu/cpu-all.h 2006-07-28 10:02:10.171049510 +0100
+--- ioemu.orig/cpu-all.h 2006-08-02 09:46:38.969768383 +0100
++++ ioemu/cpu-all.h 2006-08-02 09:46:39.030761544 +0100
@@ -835,6 +835,31 @@
:"=m" (*(volatile long *)addr)
:"dIr" (nr));
/* memory API */
Index: ioemu/vl.c
===================================================================
---- ioemu.orig/vl.c 2006-07-28 09:58:59.672577418 +0100
-+++ ioemu/vl.c 2006-07-28 10:02:10.174049171 +0100
+--- ioemu.orig/vl.c 2006-08-02 09:46:39.020762665 +0100
++++ ioemu/vl.c 2006-08-02 09:47:02.896085814 +0100
@@ -5578,6 +5578,7 @@
exit(-1);
}
+ }
+
+ if (xc_ia64_get_pfn_list(xc_handle, domid, page_array,
-+ nr_pages + (GFW_SIZE >> PAGE_SHIFT), 1)!= 1){
++ IO_PAGE_START >> PAGE_SHIFT, 1) != 1){
+ fprintf(logfile, "xc_ia64_get_pfn_list returned error %d\n", errno);
+ exit(-1);
+ }
+ PROT_READ|PROT_WRITE,
+ page_array[0]);
+
-+ fprintf(logfile, "shared page at pfn:%lx, mfn: %l016x\n",
++ fprintf(logfile, "shared page at pfn:%lx, mfn: %016lx\n",
+ IO_PAGE_START >> PAGE_SHIFT, page_array[0]);
+#endif
#else /* !CONFIG_DM */
#ifdef CONFIG_SOFTMMU
Index: ioemu/target-i386-dm/exec-dm.c
===================================================================
---- ioemu.orig/target-i386-dm/exec-dm.c 2006-07-28 09:58:22.882736989 +0100
-+++ ioemu/target-i386-dm/exec-dm.c 2006-07-28 10:03:19.972165675 +0100
+--- ioemu.orig/target-i386-dm/exec-dm.c 2006-08-02 09:46:38.903775782 +0100
++++ ioemu/target-i386-dm/exec-dm.c 2006-08-02 09:46:39.034761096 +0100
@@ -341,6 +341,23 @@
return io_mem_read[io_index >> IO_MEM_SHIFT];
}
memset(buf, 0xff, len);
Index: ioemu/exec-all.h
===================================================================
---- ioemu.orig/exec-all.h 2006-07-28 09:56:58.572271903 +0100
-+++ ioemu/exec-all.h 2006-07-28 10:02:10.175049059 +0100
+--- ioemu.orig/exec-all.h 2006-08-02 09:46:38.881778248 +0100
++++ ioemu/exec-all.h 2006-08-02 09:46:39.034761096 +0100
@@ -462,12 +462,13 @@
}
#endif
Index: ioemu/target-i386-dm/cpu.h
===================================================================
---- ioemu.orig/target-i386-dm/cpu.h 2006-07-28 09:56:58.572271903 +0100
-+++ ioemu/target-i386-dm/cpu.h 2006-07-28 10:02:10.175049059 +0100
+--- ioemu.orig/target-i386-dm/cpu.h 2006-08-02 09:46:38.902775894 +0100
++++ ioemu/target-i386-dm/cpu.h 2006-08-02 09:46:39.034761096 +0100
@@ -80,7 +80,11 @@
/* helper2.c */
int main_loop(void);
Index: ioemu/ia64_intrinsic.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ ioemu/ia64_intrinsic.h 2006-07-28 10:02:10.176048946 +0100
++++ ioemu/ia64_intrinsic.h 2006-08-02 09:46:39.035760983 +0100
@@ -0,0 +1,276 @@
+#ifndef IA64_INTRINSIC_H
+#define IA64_INTRINSIC_H